--- /dev/null
+From: Simon McVittie <smcv@debian.org>
+Date: Thu, 2 Apr 2020 09:18:55 +0100
+Subject: supp: Use a single suppressions file for lib, lib64 and multiarch
+
+In addition to the traditional library directory lib and the 64-bit
+multilib directory lib64, this will cover Debian-style multiarch
+(lib/x86_64-linux-gnu etc.), Arch Linux 32-bit (lib32), x32 and
+various others.
+
+Signed-off-by: Simon McVittie <smcv@debian.org>
+---
+ gtk.supp | 54 +++++++------
+ gtk64.supp | 253 ------------------------------------------------------------
+ meson.build | 2 +-
+ 3 files changed, 33 insertions(+), 276 deletions(-)
+ delete mode 100644 gtk64.supp
+
+diff --git a/gtk.supp b/gtk.supp
+index 7c57e5e..37d6d65 100644
+--- a/gtk.supp
++++ b/gtk.supp
+@@ -33,55 +33,55 @@
+ Memcheck:Leak
+ fun:calloc
+ ...
+- obj:/usr/lib/dri/radeonsi_dri.so
++ obj:/usr/lib*/dri/radeonsi_dri.so
+ }
+
+ # mesa driver stuff
+ {
+ i965 addr4
+ Memcheck:Addr4
+- obj:/usr/lib/dri/i965_dri.so*
++ obj:/usr/lib*/dri/i965_dri.so*
+ }
+
+ {
+ i965 addr8
+ Memcheck:Addr8
+- obj:/usr/lib/dri/i965_dri.so*
++ obj:/usr/lib*/dri/i965_dri.so*
+ }
+
+ {
+ i965 memcpy
+ Memcheck:Addr8
+ fun:memcpy*
+- obj:/usr/lib/dri/i965_dri.so*
++ obj:/usr/lib*/dri/i965_dri.so*
+ }
+
+ {
+ i965 memcpy
+ Memcheck:Addr2
+ fun:memcpy*
+- obj:/usr/lib/dri/i965_dri.so*
++ obj:/usr/lib*/dri/i965_dri.so*
+ }
+
+ {
+ mesa memcmp 8
+ Memcheck:Addr8
+ fun:*memcmp*
+- obj:/usr/lib/dri/i965_dri.so*
++ obj:/usr/lib*/dri/i965_dri.so*
+ }
+
+ {
+ mesa memcmp 1
+ Memcheck:Addr1
+ fun:*memcmp*
+- obj:/usr/lib/dri/i965_dri.so*
++ obj:/usr/lib*/dri/i965_dri.so*
+ }
+
+ {
+ mesa memset 8
+ Memcheck:Addr8
+ fun:*memset*
+- obj:/usr/lib/dri/i965_dri.so
++ obj:/usr/lib*/dri/i965_dri.so
+ }
+
+ {
+@@ -123,7 +123,7 @@
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:malloc
+- obj:/usr/lib/dri/i965_dri.so*
++ obj:/usr/lib*/dri/i965_dri.so*
+ }
+
+ {
+@@ -187,8 +187,8 @@
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:malloc
+- obj:/usr/lib/libfontconfig.so*
+- obj:/usr/lib/libfontconfig.so*
++ obj:/usr/lib*/libfontconfig.so*
++ obj:/usr/lib*/libfontconfig.so*
+ fun:FcFontSetList
+ }
+
+@@ -197,8 +197,8 @@
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:realloc
+- obj:/usr/lib/libfontconfig.so*
+- obj:/usr/lib/libfontconfig.so*
++ obj:/usr/lib*/libfontconfig.so*
++ obj:/usr/lib*/libfontconfig.so*
+ fun:FcFontRenderPrepare
+ }
+
+@@ -207,8 +207,8 @@
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:realloc
+- obj:/usr/lib/libfontconfig.so*
+- obj:/usr/lib/libfontconfig.so*
++ obj:/usr/lib*/libfontconfig.so*
++ obj:/usr/lib*/libfontconfig.so*
+ fun:FcDefaultSubstitute
+ }
+
+@@ -216,8 +216,8 @@
+ {
+ pixman_image_composite32
+ Memcheck:Cond
+- obj:/usr/lib/libpixman-1.so*
+- obj:/usr/lib/libpixman-1.so*
++ obj:/usr/lib*/libpixman-1.so*
++ obj:/usr/lib*/libpixman-1.so*
+ fun:pixman_image_composite32
+ }
+
+@@ -227,9 +227,9 @@
+ Memcheck:Leak
+ match-leak-kinds: definite
+ fun:realloc
+- obj:/usr/lib/libfontconfig.so*
+- obj:/usr/lib/libfontconfig.so*
+- obj:/usr/lib/libcairo.so*
++ obj:/usr/lib*/libfontconfig.so*
++ obj:/usr/lib*/libfontconfig.so*
++ obj:/usr/lib*/libcairo.so*
+ fun:pango_cairo_fc_font_map_fontset_key_substitute
+ }
+
+@@ -237,7 +237,17 @@
+ pango 2
+ Memcheck:Leak
+ fun:realloc
+- obj:/usr/lib/libfontconfig.so*
+- obj:/usr/lib/libfontconfig.so*
++ obj:/usr/lib*/libfontconfig.so*
++ obj:/usr/lib*/libfontconfig.so*
+ fun:_cairo_ft_font_options_substitute
+ }
++
++# GLib
++{
++ glib 1
++ Memcheck:Leak
++ match-leak-kinds: definite
++ fun:malloc
++ fun:g_malloc
++ fun:g_quark_init
++}
+diff --git a/gtk64.supp b/gtk64.supp
+deleted file mode 100644
+index a0411f0..0000000
+--- a/gtk64.supp
++++ /dev/null
+@@ -1,253 +0,0 @@
+-# Actual GTK things
+-{
+- GtkWidgetClass action GPtrArray
+- Memcheck:Leak
+- fun:malloc
+- fun:g_malloc
+- fun:g_slice_alloc
+- fun:g_ptr_array_sized_new
+- fun:g_ptr_array_new
+- fun:gtk_widget_class_add_action
+-}
+-
+-{
+- GTK media extension gio modules
+- Memcheck:Leak
+- match-leak-kinds: definite
+- fun:malloc
+- fun:g_malloc
+- fun:g_slice_alloc
+- fun:g_slice_alloc0
+- fun:g_type_create_instance
+- fun:g_object_new_internal
+- fun:g_object_new_with_properties
+- fun:g_object_new
+- fun:g_io_module_new
+- fun:g_io_modules_scan_all_in_directory_with_scope
+- fun:gtk_media_file_extension_init
+-}
+-
+-# AMD driver
+-{
+- radeonsi_dri general
+- Memcheck:Leak
+- fun:calloc
+- ...
+- obj:/usr/lib64/dri/radeonsi_dri.so
+-}
+-
+-# mesa driver stuff
+-{
+- i965 addr4
+- Memcheck:Addr4
+- obj:/usr/lib64/dri/i965_dri.so*
+-}
+-
+-{
+- i965 addr8
+- Memcheck:Addr8
+- obj:/usr/lib64/dri/i965_dri.so*
+-}
+-
+-{
+- i965 memcpy
+- Memcheck:Addr8
+- fun:memcpy*
+- obj:/usr/lib64/dri/i965_dri.so*
+-}
+-
+-{
+- i965 memcpy
+- Memcheck:Addr2
+- fun:memcpy*
+- obj:/usr/lib64/dri/i965_dri.so*
+-}
+-
+-{
+- mesa memcmp 8
+- Memcheck:Addr8
+- fun:*memcmp*
+- obj:/usr/lib64/dri/i965_dri.so*
+-}
+-
+-{
+- mesa memcmp 1
+- Memcheck:Addr1
+- fun:*memcmp*
+- obj:/usr/lib64/dri/i965_dri.so*
+-}
+-
+-{
+- mesa memset 8
+- Memcheck:Addr8
+- fun:*memset*
+- obj:/usr/lib64/dri/i965_dri.so
+-}
+-
+-{
+- mesa realpath
+- Memcheck:Leak
+- match-leak-kinds: definite
+- fun:malloc
+- fun:realpath@@GLIBC_2.3
+- obj:*
+- obj:*
+- obj:*
+- obj:*
+- obj:*
+- obj:*
+- obj:*
+- obj:*
+- fun:epoxy_eglInitialize_global_rewrite_ptr
+-}
+-
+-{
+- mesa calloc
+- Memcheck:Leak
+- match-leak-kinds: definite
+- fun:calloc
+- obj:*
+- obj:*
+- obj:*
+- obj:*
+- obj:*
+- obj:*
+- obj:*
+- obj:*
+- obj:*
+- fun:epoxy_eglInitialize_global_rewrite_ptr
+-}
+-
+-{
+- mesa malloc
+- Memcheck:Leak
+- match-leak-kinds: definite
+- fun:malloc
+- obj:/usr/lib64/dri/i965_dri.so*
+-}
+-
+-{
+- mesa glReadPixels
+- Memcheck:Addr16
+- obj:*
+- obj:*
+- obj:*
+- obj:*
+- obj:*
+- fun:epoxy_glReadPixels_global_rewrite_ptr
+-}
+-
+-{
+- epoxy glxQueryServerString 1
+- Memcheck:Leak
+- fun:malloc
+- fun:XextAddDisplay
+- obj:*
+- obj:*
+- obj:*
+- obj:*
+- obj:*
+- fun:epoxy_glXQueryServerString_global_rewrite_ptr
+-
+-}
+-
+-{
+- epoxy glxQueryServerString 2
+- Memcheck:Leak
+- match-leak-kinds: definite
+- fun:malloc
+- fun:realpath*
+- obj:*
+- obj:*
+- obj:*
+- obj:*
+- obj:*
+- obj:*
+- obj:*
+- fun:epoxy_glXQueryServerString_global_rewrite_ptr
+-}
+-
+-{
+- epoxy glGetTexImage
+- Memcheck:Addr16
+- obj:*
+- obj:*
+- obj:*
+- obj:*
+- obj:*
+- fun:epoxy_glGetTexImage_global_rewrite_ptr
+-}
+-
+-
+-
+-
+-# Fontconfig
+-{
+- FcFontSetList
+- Memcheck:Leak
+- match-leak-kinds: definite
+- fun:malloc
+- obj:/usr/lib64/libfontconfig.so*
+- obj:/usr/lib64/libfontconfig.so*
+- fun:FcFontSetList
+-}
+-
+-{
+- FcFontRenderPrepare
+- Memcheck:Leak
+- match-leak-kinds: definite
+- fun:realloc
+- obj:/usr/lib64/libfontconfig.so*
+- obj:/usr/lib64/libfontconfig.so*
+- fun:FcFontRenderPrepare
+-}
+-
+-{
+- FcDefaultSubstitute
+- Memcheck:Leak
+- match-leak-kinds: definite
+- fun:realloc
+- obj:/usr/lib64/libfontconfig.so*
+- obj:/usr/lib64/libfontconfig.so*
+- fun:FcDefaultSubstitute
+-}
+-
+-# Pixman
+-{
+- pixman_image_composite32
+- Memcheck:Cond
+- obj:/usr/lib64/libpixman-1.so*
+- obj:/usr/lib64/libpixman-1.so*
+- fun:pixman_image_composite32
+-}
+-
+-# Pango
+-{
+- pango 1
+- Memcheck:Leak
+- match-leak-kinds: definite
+- fun:realloc
+- obj:/usr/lib64/libfontconfig.so*
+- obj:/usr/lib64/libfontconfig.so*
+- obj:/usr/lib64/libcairo.so*
+- fun:pango_cairo_fc_font_map_fontset_key_substitute
+-}
+-
+-{
+- pango 2
+- Memcheck:Leak
+- fun:realloc
+- obj:/usr/lib64/libfontconfig.so*
+- obj:/usr/lib64/libfontconfig.so*
+- fun:_cairo_ft_font_options_substitute
+-}
+-
+-# GLib
+-{
+- glib 1
+- Memcheck:Leak
+- match-leak-kinds: definite
+- fun:malloc
+- fun:g_malloc
+- fun:g_quark_init
+-}
+diff --git a/meson.build b/meson.build
+index 92405f6..7eee560 100644
+--- a/meson.build
++++ b/meson.build
+@@ -803,7 +803,7 @@ meson.add_install_script('build-aux/meson/post-install.py',
+ if host_machine.system() != 'windows'
+ # Install Valgrind suppression files (except on Windows,
+ # as Valgrind is currently not supported on Windows)
+- install_data('gtk.supp', 'gtk64.supp',
++ install_data('gtk.supp',
+ install_dir : join_paths(gtk_datadir, 'gtk-4.0', 'valgrind'))
+ endif
+